From 97dbef451e027ac701640da1652bc327e3346e18 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20=C3=85dahl?= Date: Sun, 18 Oct 2015 21:12:59 +0800 Subject: [PATCH] GtkTreeView: Make a search window destroy helper https://bugzilla.gnome.org/show_bug.cgi?id=756780 --- gtk/gtktreeview.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c index 2a3b65b771..415a5e6cc0 100644 --- a/gtk/gtktreeview.c +++ b/gtk/gtktreeview.c @@ -2115,6 +2115,16 @@ gtk_tree_view_free_rbtree (GtkTreeView *tree_view) tree_view->priv->prelight_node = NULL; } +static void +gtk_tree_view_destroy_search_window (GtkTreeView *tree_view) +{ + gtk_widget_destroy (tree_view->priv->search_window); + + tree_view->priv->search_window = NULL; + tree_view->priv->search_entry = NULL; + tree_view->priv->search_entry_changed_id = 0; +} + static void gtk_tree_view_destroy (GtkWidget *widget) { @@ -2189,9 +2199,7 @@ gtk_tree_view_destroy (GtkWidget *widget) /* destroy interactive search dialog */ if (tree_view->priv->search_window) { - gtk_widget_destroy (tree_view->priv->search_window); - tree_view->priv->search_window = NULL; - tree_view->priv->search_entry = NULL; + gtk_tree_view_destroy_search_window (tree_view); if (tree_view->priv->typeselect_flush_timeout) { g_source_remove (tree_view->priv->typeselect_flush_timeout); @@ -14888,10 +14896,7 @@ gtk_tree_view_set_search_entry (GtkTreeView *tree_view, } else if (tree_view->priv->search_window) { - gtk_widget_destroy (tree_view->priv->search_window); - - tree_view->priv->search_window = NULL; - tree_view->priv->search_entry_changed_id = 0; + gtk_tree_view_destroy_search_window (tree_view); } if (entry) -- 2.30.2